builder: Parse GskTransform properties
authorBenjamin Otte <otte@redhat.com>
Fri, 12 Apr 2019 03:13:30 +0000 (05:13 +0200)
committerBenjamin Otte <otte@redhat.com>
Fri, 12 Apr 2019 17:34:29 +0000 (19:34 +0200)
In particular, this allows parsing the GtkFixed position properties.

gtk/gtkbuilder.c

index cbbed790b90e6123bbb46f1f38276b76833bb3f1..bac38f2aca272b61c717f7cd90d85b7207973122 100644 (file)
@@ -2061,6 +2061,22 @@ gtk_builder_value_from_string_type (GtkBuilder   *builder,
               ret = FALSE;
             }
         }
+      else if (G_VALUE_HOLDS (value, GSK_TYPE_TRANSFORM))
+        {
+          GskTransform *transform;
+
+          if (gsk_transform_parse (string, &transform))
+            g_value_take_boxed (value, transform);
+          else
+            {
+              g_set_error (error,
+                           GTK_BUILDER_ERROR,
+                           GTK_BUILDER_ERROR_INVALID_VALUE,
+                           "Could not parse transform '%s'",
+                           string);
+              ret = FALSE;
+            }
+        }
       else if (G_VALUE_HOLDS (value, G_TYPE_STRV))
         {
           gchar **vector = g_strsplit (string, "\n", 0);